#导入flask
from re import I
from flask import Blueprint,request,json,jsonify


#实例化蓝图
bp_scenic=Blueprint("scenic",__name__)


#导入数据库
from db import db1

#导入文件操作模块
import os

#导入封装好的有关文件操作配置文件
from utils.myfile import myfile

#添加景点类型接口
@bp_scenic.route('/typeM',methods=['POST','GET'])
def typeM():
    if request.method=='POST':
        #获取前端传递的数据
        data=request.data
        if data:
            data=json.loads(data)
        else:
            data=request.form
        #构造sql语句
        sql="insert into type values(0,'%s')"%(data['name'])
        db1.insert(sql)
        #返回
        return jsonify({'code':200})

    

#添加景点接口
@bp_scenic.route('/scenicM',methods=['POST','GET'])
def scenicM():
    if request.method=='POST':
        #获取用户输入
        data=request.form
        #构造sql语句 先将除图片的其他字段添加到数据库中
        sql="insert into scenic(title,price,type_id) values('%s',%.2f,%d)"%(data['title'],float(data['price']),int(data['type_id']))
        db1.insert(sql)
        #获取新加的id  来创建一个根据id命名的文件夹
        sql1="select id from scenic where title='%s'"%(data['title'])
        res=db1.find(sql)
        #文件上传,上传成功后返回图片路径
        file=request.files['file']
        #路径=文件位置+id名称
        path='./static/upload/'+str(res['id'])
        #根据id名称建文件夹
        myfile.file_mkdir(path)
        
        #将文件路径更新到数据库中 
        #返回
        return jsonify({'code':200})
    
    
    #展示详情景点名和景点类型
    if request.method=='GET':
        #获取前端传递的id
        id=request.args.get('id')
        if id:
            #构造sql语句 查询
            sql="select * from scenic as s left join type as t on s.type_id=t.id where s. id=%d"%(int(id))
            print(sql)
        else:
            sql="select * from scenic"
        res=db1.find(sql)
        #返回
        return jsonify({'code':200,'list':res})


